home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / dev / lang / amigatalk.lha / help / boopsidocs / bevel_ic.doc next >
Text File  |  2002-05-05  |  10KB  |  310 lines

  1. TABLE OF CONTENTS
  2.  
  3. bevel_ic/--datasheet--
  4. bevel_ic/--styleguide--
  5. bevel_ic/BEVEL_GetClass
  6. bevel_ic/--datasheet--                               bevel_ic/--datasheet--
  7.  
  8.     NAME
  9.         bevel_ic -- create bevel BOOPSI objects
  10.  
  11.     SUPERCLASS
  12.         imageclass
  13.  
  14.     REQUIRES
  15.         None.
  16.  
  17.     DESCRIPTION
  18.         This image class can create a varity of bevel boxes styles
  19.         including those appropriate as gadget borders, titled or
  20.         non-titled grouping boxes and more. This class is very similar
  21.         in function to the frameiclass in OS 3.x rom, except this class
  22.         supports the newer style bevels under OS 2.04 as well.
  23.  
  24.     METHODS
  25.         OM_NEW -- Create the bevel image.  Passed to superclass, then OM_SET.
  26.  
  27.         OM_GET -- Get object attributes.  Passed to superclass first.
  28.  
  29.         OM_SET -- Set object attributes.  Passed to superclass first.
  30.  
  31.         IM_FRAMEBOX -- Initial attempt at this method, totally
  32.             untested at this time. If you know what it is and need it
  33.             then try it and report any bugs. :)
  34.  
  35.         IM_DRAW -- Renders the images.  Overrides the superclass.
  36.  
  37.         IM_DRAWFRAME -- Renders the images at the frame size.
  38.             Any following IM_DRAW will be at this frame size w/o a
  39.             overriding OM_SET. Overrides the superclass.
  40.  
  41.         IM_ERASE -- Erase the images.  Overrides the superclass.
  42.  
  43.         IM_ERASEFRAME -- Erase the images at the frame size.
  44.             Overrides the superclass.
  45.  
  46.         All other methods are passed to the superclass, including OM_DISPOSE.
  47.  
  48.     ATTRIBUTES
  49.         IA_Top (WORD)
  50.         IA_Left (WORD)
  51.         IA_Width (WORD)
  52.         IA_Height (WORD)
  53.             Set bevel image size and position.
  54.  
  55.             Applicability is (OM_NEW, OM_SET)
  56.  
  57.         IA_SupportsDisable (BOOL)
  58.             Reports TRUE if the image class can render its own
  59.             disable pattern.
  60.  
  61.             Applicability is (OM_GET)
  62.  
  63.         IA_APattern (UWORD *)
  64.             Optional inner fill pattern for SetAfPt() when used in
  65.             conjunction with BEVEL_FillPen. See also BEVEL_FillPattern.
  66.             I missed the OS support of this tag, thus, it is duplicated
  67.             in BEVEL_FillPattern which will remain for backwards
  68.             compatibility.
  69.  
  70.             Defaults to NULL.
  71.  
  72.             Applicability is (OM_NEW, OM_SET)
  73.  
  74.         IA_APatSize (UWORD)
  75.             Set pattern size for the pattern passed via IA_APattern.
  76.             Defaults to 1. With BEVEL_FillPattern, the size was fixed.
  77.  
  78.             Applicability is (OM_NEW, OM_SET)
  79.  
  80.         IA_Recessed
  81.             Inverts SHADOW/SHINEPEN and shading rendering pens.
  82.  
  83.             Applicability is (OM_NEW, OM_SET)
  84.  
  85.         IA_EdgesOnly
  86.             See BEVEL_Transparent.
  87.  
  88.             Applicability is (OM_NEW, OM_SET)
  89.  
  90.         IA_FrameType
  91.             Accepts all frameiclass frame types, and converts them
  92.             the closest matching BEVEL_Style type honoring the
  93.             current user preference settings.
  94.  
  95.             Applicability is (OM_SET)
  96.  
  97.         IA_Font (struct TextAttr *)
  98.             Text Attribute to use for any label text.
  99.  
  100.             Applicability is (OM_NEW, OM_SET)
  101.  
  102.         IA_HighlightPen (UWORD)
  103.         IA_FGPen (UWORD)
  104.             Foreground pen.
  105.  
  106.             Defaults to SHINEPEN.
  107.  
  108.             Applicability is (OM_NEW, OM_SET)
  109.  
  110.         IA_ShadowPen (UWORD)
  111.         IA_BGPen (UWORD)
  112.             Background pen.
  113.  
  114.             Defaults to SHADOWPEN.
  115.  
  116.             Applicability is (OM_NEW, OM_SET)
  117.  
  118.         BEVEL_FillPen (WORD)
  119.             Inner bevel area RectFill() pen number, ~0 means to
  120.             ignore, and not to RectFill().
  121.  
  122.             Defaults to ~0.
  123.  
  124.             Applicability is (OM_NEW, OM_SET)
  125.  
  126.         BEVEL_FillPattern (UWORD *)
  127.             Optional inner fill pattern for SetAfPt() when used in
  128.             conjunction with BEVEL_FillPen.  See also: IA_APattern
  129.  
  130.             Defaults to NULL.
  131.  
  132.             Applicability is (OM_NEW, OM_SET)
  133.  
  134.         BEVEL_TextPen (WORD)
  135.             Bevel text rendering pen number, ~0 will render
  136.             in TEXTPEN.
  137.  
  138.             Defaults to ~0.
  139.  
  140.             Applicability is (OM_NEW, OM_SET)
  141.  
  142.         BEVEL_Style (BOOL)
  143.             Specifies the bevel box style, may be one of the following;
  144.  
  145.                 BVS_THIN       - thin/small bevel
  146.                 BVS_BUTTON     - standard button bevel (thin/thick pref)
  147.                 BVS_GROUP      - layout/grouping bevel (thin/thick pref)
  148.                 BVS_FIELD      - string/inputfield bevel (thin/thick pref)
  149.                 BVS_NONE       - no bevel
  150.                 BVS_DROPBOX    - standard dropbox
  151.                 BVS_SBAR_HORIZ - horizontal separator bar
  152.                 BVS_SBAR_VERT  - vertical separator bar
  153.                 BVS_BOX        - plain "black" box bevel
  154.                 BVS_STANDARD   - Simular to BVS_BUTTON, but no XEN!
  155.  
  156.             Defaults to BVS_BUTTON
  157.  
  158.             Applicability is (OM_NEW, OM_SET)
  159.  
  160.         BEVEL_Label (STRPTR)
  161.             Specifies the text label for the bevel box.
  162.  
  163.             Defaults to NULL.
  164.  
  165.             Applicability is (OM_NEW, OM_SET)
  166.  
  167.         BEVEL_LabelPlace (WORD)
  168.             Specifies label location, may be one of the following;
  169.  
  170.                 BVJ_TOP_CENTER
  171.                 BVJ_TOP_LEFT
  172.                 BVJ_TOP_RIGHT
  173.                 BVJ_IN_CENTER
  174.                 BVJ_IN_LEFT
  175.                 BVJ_IN_RIGHT
  176.  
  177.             Defaults to BVJ_TOP_CENTER.
  178.  
  179.             NOTE: BVS_BOTTOM_* settings not yet implemented
  180.  
  181.             Applicability is (OM_NEW, OM_SET)
  182.  
  183.         BEVEL_InnerTop (WORD)
  184.             Get only attribute, returns the inside-top offset of the
  185.             bevel box accounting for any BVJ_TOP text label placements.
  186.  
  187.             Applicability is (OM_GET)
  188.  
  189.         BEVEL_InnerLeft (WORD)
  190.             Get only attribute, returns the inside-left offset of the
  191.             bevel box.
  192.  
  193.             Applicability is (OM_GET)
  194.  
  195.         BEVEL_InnerWidth (WORD)
  196.             Get only attribute, returns the inside-width of the
  197.             bevel box, basically the same as;
  198.  
  199.                 IA_Width - (BEVEL_VertSize * 2) - 1
  200.  
  201.             Except this also accounts for the BVS_TOP label placements.
  202.  
  203.             Applicability is (OM_GET)
  204.  
  205.         BEVEL_InnerHeight (WORD)
  206.             Get only attribute, returns the inside - height of the
  207.             bevel box, basically the same as;
  208.  
  209.                 IA_Height - (BEVEL_InnerTop + BEVEL_HorzSize) - 1
  210.  
  211.             with the exception that BEVEL_InnerHeight will account for
  212.             any text label for a BVS_GROUP style bevel.
  213.  
  214.             Applicability is (OM_GET)
  215.  
  216.         BEVEL_HorizSize (WORD)
  217.             Get only attribute, returns the nominal size (in pixels) of
  218.             the horizontal lines the bevel will draw for the givel style.
  219.  
  220.             Applicability is (OM_GET)
  221.  
  222.         BEVEL_VertSize (WORD)
  223.             Get only attribute, returns the nominal size (in pixels) of
  224.             the vertical lines the bevel will draw for the given style.
  225.  
  226.             Applicability is (OM_GET)
  227.  
  228.         BEVEL_SoftStyle (WORD)
  229.             Font softstyles to apply.
  230.             See <graphics/text.h> SoftStyle definitions.
  231.  
  232.             Defaults to 0.
  233.  
  234.             Applicability is (OM_NEW, OM_SET)
  235.  
  236.         BEVEL_Transparent (BOOL)
  237.             If set TRUE, bevel will not attempt to render or erase any
  238.             part of the inner area of the bevel.
  239.  
  240.             Defaults to FALSE.
  241.  
  242.             Applicability is (OM_NEW, OM_SET)
  243.  
  244.         BEVEL_ColorMap (struct ColorMap *)
  245.             Screen viewport colormap pointer, use to obtain additional
  246.             best-match pens for XEN and possibly other future multi-pen
  247.             beveling options. MWB or NI3 palette recommended for best
  248.             results.
  249.  
  250.             Defaults to NULL.
  251.  
  252.             Applicability is (OM_NEW, OM_SET)
  253.  
  254.         BEVEL_Flags (UWORD)
  255.             Intentionally left undocumented! It is used for some hidden
  256.             BVS_BUTTON xen style magic. Class authors inquire as needed.
  257.  
  258.             Defaults to 0.
  259.  
  260.             Applicability is (OM_NEW, OM_SET)
  261. bevel_ic/--styleguide--                             bevel_ic/--styleguide--
  262.  
  263.     BEVEL STYLE
  264.  
  265.         Several ReAction objects allow overriding the default bevel
  266.         style. This is NOT recommended practice for application authors.
  267.         But instead, its provided to add some extra flexability to BOOPSI
  268.         class authors who may wish to sub-class a ReAction gadget or
  269.         utilize it within a larger composite (model class) object.
  270.  
  271.         When using bevel.image directly be sure to select the appropriate
  272.         bevel for your usage. Do not provide a bevel style override tag
  273.         unless it makes sence to do so. The idea being that all applications
  274.         and BOOPSI objects should be presented using a standard beveling
  275.         style. For example, a button gadget using a BVS_FIELD string bevel
  276.         would be an illogical choice.  Any button should use BVS_BUTTON, a
  277.         text entry field should use BVS_FIELD, and ofcourse a layout group,
  278.         if using a bevel, should use BVS_GROUP, BVS_SBAR_VERT or
  279.         BVS_SBAR_HORIZ.
  280. bevel_ic/BEVEL_GetClass                             bevel_ic/BEVEL_GetClass
  281.  
  282.     NAME
  283.         BEVEL_GetClass -- Gets the pointer to the bevel class.
  284.  
  285.     SYNOPSIS
  286.         bevel_class = BEVEL_GetClass();
  287.         D0
  288.  
  289.         Class * BEVEL_GetClass(VOID);
  290.  
  291.     FUNCTION
  292.         Obtains the pointer to the Bevel image class for use with
  293.         NewObject().  This function always returns a valid pointer so
  294.         you do not need to check it.  The reason is that if the library
  295.         opens fine, then the pointer returned is already setup.  (Of course
  296.         this implies that if opening the library fails, you shouldn't be
  297.         calling this.)
  298.  
  299.         Note that this function does not create the class, that is done
  300.         when the class library is opened.
  301.  
  302.     INPUTS
  303.         Nothing.
  304.  
  305.     RESULT
  306.         bevel_class - Pointer to the Bevel image class.
  307.  
  308.     SEE ALSO
  309.  
  310.